The present invention relates to computer networking, and more specifically, to adaptive, configurable feature delivery in a computer network environment.
Social networking sites such as Facebook® and LinkedIn®, goal-oriented sites such as Match.com® and eDiets.com®, as well as internal business networks (e.g., Intranet portals), provide the ability for individuals to associate and/or collaborate with other individuals over a network. These, and other, networking sites typically involve a community of users who share some common purpose (e.g., business/professional, social, and/or goal-oriented).
As technology advances, e.g., with respect to rich multi-media applications, competition among available resources (e.g., bandwidth and memory) often results. Consequently, there is becoming a greater need to manage and (when possible) conserve these finite resources. As consumers demand more and more content, higher definition services, interactive services, and data services, existing network infrastructures have become concerned with the increasing burden of providing adequate bandwidth to meet these demands.
During an active Internet browsing session, packets associated with various content sources are transmitted/streamed to an end user device. These packets are assigned some priority value which, in turn, determines the amount of bandwidth to be allocated to these packets. Video/audio packets consume substantial amounts of bandwidth when a user requests a page/resource that has video effects embedded therein. In order to provide maximum performance, these types of packets are typically assigned a greater priority.
Oftentimes, a computer system runs multiple applications that share available system resources, such as memory and bandwidth. When a number of full-featured applications are simultaneously running, the overall system performance may be hampered as a result of the finite amount of available resources. In such cases, even basic operations make take more time than desired to complete, thereby wasting the system user's valuable time.
Many applications provide much of their functionality as small plug-ins, which get loaded at runtime or which may be activated only when some action is taken. Even if the plug-in is activated upon the occurrence of some action, a corresponding user interface and underlying framework supporting the plug-in still consumes a considerable amount of resources and which makes the application ‘heavy.’
An always-on widget (e.g., instant messenger) is one example of wasted bandwidth. For example, an always-on chat widget with video chat feature receives content even if the user will be not be watching it. When the widget remains fully equipped with all features despite its lack of use, it unnecessarily consumes bandwidth. While some sites offer a light version for users with low bandwidth Internet access, this solution offers no user discretion over what features will go into the light version. In addition, this solution does not provide for the enablement or disablement of features based upon the current needs of the system user.